package com.ruoyi.business.VO;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.util.List;

@Data
@Getter
@Setter
@JsonIgnoreProperties({"message"})
public class PatientInfoVO {

    @JsonProperty("message")
    private String message;

    @JsonProperty("result")
    private Result result;

    @Data
    @Getter
    @Setter
    public static class Result {

        @JsonProperty("age")
        private int age;

        @JsonProperty("allsummary")
        private String allsummary;

        @JsonProperty("medicalHistory")
        private List<MedicalHistory> medicalHistory;

        @JsonProperty("patientHeight")
        private String patientHeight;

        @JsonProperty("patientImgUrl")
        private String patientImgUrl;

        @JsonProperty("patientName")
        private String patientName;

        @JsonProperty("patientWeight")
        private String patientWeight;

        @JsonProperty("sexName")
        private String sexName;

        @Data
        @Getter
        @Setter
        public static class MedicalHistory {

            @JsonProperty("medicalDate")
            private String medicalDate;

            @JsonProperty("recordDetail")
            private List<RecordDetail> recordDetail;

            @Data
            @Getter
            @Setter
            public static class RecordDetail {

                @JsonProperty("abnormal")
                private List<String> abnormal;

                @JsonProperty("diagnosi")
                private String diagnosi;

//                @JsonProperty("diagnosiStatus")
                private int diagnosiStatus;

                @JsonProperty("diagnosiImgUrl")
                private String diagnosiImgUrl;

                @JsonProperty("doctorName")
                private String doctorName;

                @JsonProperty("medicalTime")
                private String medicalTime;

                @JsonProperty("recordDetailName")
                private String recordDetailName;

                @JsonProperty("recordDetailVile")
                private List<RecordDetailVile> recordDetailVile;

                @Data
                @Getter
                @Setter
                public static class RecordDetailVile {

                    @JsonProperty("name")
                    private String name;

                    @JsonProperty("range")
                    private String range;

                    @JsonProperty("status")
                    private int status;

                    @JsonProperty("value")
                    private String value;

                }
            }
        }
    }
}

